package com.zed.api.games;

import com.zed.api.common.param.DefaultParamsConfig;
import com.zed.api.common.param.ParamsBuilder;

import java.io.Serial;
import java.util.Objects;

/**
 * 空的响应
 *
 * @author Zed
 */
public class DefaultActionReply extends DefaultParamsConfig implements ActionReply {

    @Serial
    private static final long serialVersionUID = 130758141429669513L;
    private Game game;

    private GameLevel<?, ? extends Action> level;

    public DefaultActionReply(Game game, GameLevel<?, ? extends Action> gameLevel, ParamsBuilder builder) {
        super(builder);
        this.game = Objects.requireNonNull(game, "\"game\" cannot be null.");
        this.level = Objects.requireNonNull(gameLevel, "\"level\" cannot be null.");
    }

    @Override
    public Game getGame() {
        return this.game;
    }

    @Override
    public GameLevel<?, ? extends Action> getGameLevel() {
        return this.level;
    }


}
